This invention relates generally to control systems, and more specifically, to control systems where fluctuations in the torque produced by a motor are undesirable.
Permanent Magnet Synchronous Machines (PMSM), when driven by a pulse width modulation scheme, generate unwanted fluctuations, e.g. ripples, in the torque produced by the motor. This torque ripple is undesirable. Torque ripple is a major concern in many general motion applications. For example, one application where torque ripple is a major concern, and where removal of adverse torque ripple is beneficial, is semiconductor wafer handling machines. During manufacture, a manufacturer does not want to disturb a wafer in any fashion while moving the wafer from station to station. Currently, at least some known expensive motors are used to overcome torque ripple through a design incorporated into the motor.
The most widely used torque ripple compensation technique is the feed forward approach. A requirement of the feed forward approach is either prior knowledge of the motor construction and/or prior measurement of a torque ripple signal. The measured signal, referenced to the motor rotor, is then fed forward through the control into the motor. The signal application results in attenuation of torque ripple. Feed forward compensation is successful in a broad class of problems and is arguably a preferred approach when complete knowledge of the torque ripple signal is available. However, in certain situations either due to environmental, physical constraints or usability issues, complete knowledge of the torque ripple signal is unavailable.
In one aspect of the invention, a method is provided for compensating for torque ripple in pulse width modulated machines. The method includes providing damping for transient disturbances utilizing a fixed feedback controller, and rejecting steady disturbances utilizing an adaptive controller.
In another aspect, a control system configured to compensate for torque ripple is provided. The control system includes a plant to be controlled, a fixed feedback controller configured to provide damping for transient disturbances, and an adaptive controller configured to reject steady disturbances.
In further aspect, a control system is provided including a fixed feedback controller configured to provide damping for transient disturbances and an adaptive controller configured to reject steady disturbances. The control system is configured to determine QP to minimize system output where system output is defined as output=P11d+QpP12e. The adaptive controller is configured to adjust QP utilizing a least means square (LMS) algorithm according to:
e(n)=d(n)xe2x88x92wTu(n)
ŵ(n+1)=ŵ(n)+xcexcu(n)e*(n)
for each time step, where:
M=number of taps
xcexc=stepxe2x88x92size
u(n)=M by 1 input vector
d(n)=desired response
ŵ(n+1)=estimate of weighting factors.
In yet another aspect, a control system is provided that includes a fixed feedback controller configured to provide damping for transient disturbances, and an adaptive controller configured to reject steady disturbances. The control system is configured to determine QP to minimize system output where system output is defined as output=P11d+QpP12e. The adaptive controller is configured to adjust Qp utilizing a recursive least squares (RLS) algorithm according to:       k    ⁢          (      n      )        =                    λ                  -          1                    ⁢              P        ⁢                  (                      n            -            1                    )                    ⁢              u        ⁢                  (          n          )                            1      +                        λ                      -            1                          ⁢                              u            T                    ⁢                      (            n            )                          ⁢                  P          ⁢                      (                          n              -              1                        )                          ⁢                  u          ⁢                      (            n            )                              xe2x80x83xcex1(n)=d(n)xe2x88x92ŵ1(nxe2x88x921)u(n)
ŵ(n)=ŵ(nxe2x88x921)+k(n)xcex1*(n)
P(n)=xcexxe2x88x921P(nxe2x88x921)xe2x88x92xcexxe2x88x921k(n)uT(n)P(nxe2x88x921)
for each time step, where:
ŵ(n)=tap weight factor
k(n)=gain factor
xcex1(n)=priori estimation error
P(n)=correlation matrix inverse
and includes initialization values of:
P(0)=xcex4xe2x88x921I
ŵ(0)=0
where xcex4 is a positive number less than one.